As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to these users is an information handling system. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may vary with respect to the type of information handled; the methods for handling the information; the methods for processing, storing or communicating the information; the amount of information processed, stored, or communicated; and the speed and efficiency with which the information is processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include or comprise a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
Information handling systems may include multiple controllers and peripheral devices. The controllers may communicate with and manage peripheral devices or groups of peripheral devices. In some instances, the controllers may also communicate between each other. Communications may take place over a variety of communication paths, such as a system management bus (“SMBus”). A Management Component Transport Protocol (MCTP) defines the way in which information is exchanged between the controllers and devices and between two controllers. In particular, the MCTP defines a packet structure for communications and a list of control commands to be sent by controllers to other devices. One problem with the MCTP, however, is that the structure of the required packet limits the length of communications between the controllers and the other controllers/peripheral devices. This decreases the scalability of MCTP packets in applications that require large data transmission. Additionally, the MCTP is generally error intolerant, as the protocol does not provide a way to recover from errors in communications or series of communications.